#include <stdio.h>

const char *f(int a)
{
	return a == 10 ? "it is ten":"it is not ten";
}

void main()
{}


#if 0

/*
 * x86
 */
	早期无优化功能的编译器，在碰到编译含有运算符的语句时会以"if/else"语句的方法进行处理。

#endif

#if 0
/*
 * intel
 */
0000000000001129 <f>:
    1129:	f3 0f 1e fa          	endbr64 
    112d:	55                   	push   %rbp
    112e:	48 89 e5             	mov    %rsp,%rbp
    1131:	89 7d fc             	mov    %edi,-0x4(%rbp)
    1134:	83 7d fc 0a          	cmpl   $0xa,-0x4(%rbp)
    1138:	75 09                	jne    1143 <f+0x1a>
    113a:	48 8d 05 c3 0e 00 00 	lea    0xec3(%rip),%rax        # 2004 <_IO_stdin_used+0x4>
    1141:	eb 07                	jmp    114a <f+0x21>
    1143:	48 8d 05 c4 0e 00 00 	lea    0xec4(%rip),%rax        # 200e <_IO_stdin_used+0xe>
    114a:	5d                   	pop    %rbp
    114b:	c3                   	retq   

000000000000114c <main>:
    114c:	f3 0f 1e fa          	endbr64 
    1150:	55                   	push   %rbp
    1151:	48 89 e5             	mov    %rsp,%rbp
    1154:	90                   	nop
    1155:	5d                   	pop    %rbp
    1156:	c3                   	retq   
    1157:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
    115e:	00 00 

/*
 * arm
 */
000000000040051c <f>:
  40051c:	d10043ff 	sub	sp, sp, #0x10
  400520:	b9000fe0 	str	w0, [sp, #12]
  400524:	b9400fe0 	ldr	w0, [sp, #12]
  400528:	7100281f 	cmp	w0, #0xa
  40052c:	54000081 	b.ne	40053c <f+0x20>  // b.any
  400530:	90000000 	adrp	x0, 400000 <_init-0x3b0>
  400534:	91182000 	add	x0, x0, #0x608
  400538:	14000003 	b	400544 <f+0x28>
  40053c:	90000000 	adrp	x0, 400000 <_init-0x3b0>
  400540:	91186000 	add	x0, x0, #0x618
  400544:	910043ff 	add	sp, sp, #0x10
  400548:	d65f03c0 	ret

000000000040054c <main>:
  40054c:	d503201f 	nop
  400550:	d65f03c0 	ret
  400554:	00000000 	.inst	0x00000000 ; undefined


#endif

